package cn.tedu.blog.server.service;

import cn.tedu.blog.server.pojo.dto.BannerAddDTO;
import cn.tedu.blog.server.pojo.dto.BannerEditDTO;
import cn.tedu.blog.server.pojo.vo.BannerListVO;
import cn.tedu.blog.server.utils.JsonPage;

import java.util.List;

public interface IBannerService {
    /**
     * 添加轮播图
     * @param bannerAddDTO
     */
    void insertBanner(BannerAddDTO bannerAddDTO);

    /**
     * 根据id删除轮播图
     * @param id
     */
    void deleteBanner(Long id);

    /**
     * 批量删除轮播图
     */
    void deleteBannerByIds(Long... ids);

    /**
     * 根据id修改轮播图
     * @param bannerEditDTO
     */
    void updateBanner(BannerEditDTO bannerEditDTO);

    /**
     * 分页查询轮播图列表
     * @param page
     * @param pageSize
     * @return
     */
    JsonPage<BannerListVO> listBanner(Integer page, Integer pageSize);

    /**
     * 分页查询轮播图status=1的
     * @return
     */
    JsonPage<BannerListVO> listBannerByStatus1(Integer page, Integer pageSize);

    /**
     * 分页查询轮播图status=0的
     * @return
     */
    JsonPage<BannerListVO> listBannerByStatus0(Integer page, Integer pageSize);
    
    /* ---------- 前台部分 -----------*/
    List<BannerListVO> listApiBanner();
}
